package com.bryant.bryant_weather.ui.home

import com.bryant.bryant_weather.base.BaseView
import com.bryant.bryant_weather.bean.ChangeCityBean
import com.qweather.sdk.response.air.v1.AirV1CurrentResponse
import com.qweather.sdk.response.air.v1.AirV1HourlyResponse
import com.qweather.sdk.response.weather.WeatherHourlyResponse
import com.qweather.sdk.response.weather.WeatherNowResponse

interface HomeView:BaseView{

    // ========================================= 获取首页天气 ========================================
    // 1. 获取首页天气成功
    fun getMainWeatherDataSuccess(response:WeatherNowResponse)

    // 2. 获取首页天气失败
    fun getMainWeatherDataFailed(msg:String)
    //-------------------------------------------------------------------------------------------



    // ========================================= 获取24小时天气 ======================================
    // 1. 获取24小时天气成功
    fun get24HourWeatherDataSuccess(response: WeatherHourlyResponse)

    // 2. 获取24小时天气失败
    fun get24HourWeatherDataFailed(msg: String)

    // -------------------------------------------------------------------------------------------



    // ======================================== 获取空气质量 ======================================

    // 1. 获取空气质量成功
    fun getAirQualityDataSuccess(response: AirV1CurrentResponse)
    // 2. 获取空气质量失败
    fun getAirQualityDataFailed(msg: String)

    // -------------------------------------------------------------------------------------------

    // ======================================== 获取24小时空气质量 ====================================
    // 1. 获取24小时空气质量成功
    fun get24HourAirQualityDataSuccess(response: AirV1HourlyResponse)
    // 2. 获取24小时空气质量失败
    fun get24HourAirQualityDataFailed(msg: String)

    // ---------------------------------------------------------------------------------------------

    // ========================================= 获取城市列表 =======================================
    // 获取城市列表成功
    fun refreshCityList(response: MutableList<ChangeCityBean>)
}